//package com.travel.travelServer.service1.impl;
//
//import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
//import com.travel.travelServer.entity1.Menu;
//import com.travel.travelServer.entity1.RoleMenu;
//import com.travel.travelServer.entity1.vo.MenuVo;
//import com.travel.travelServer.mapper1.MenuMapper;
//import com.travel.travelServer.mapper1.RoleMenuMapper;
//import com.travel.travelServer.service1.MenuService;
//import com.travel.travelServer.utils.AjaxResult;
//import com.travel.travelServer.utils.BaseService;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Service;
//import org.springframework.transaction.annotation.Transactional;
//
//import java.util.Arrays;
//import java.util.List;
//
//
///**
// * <p>
// *  Menu表 业务接口实现
// * </p>
// *
// * @author <>
// *
// */
//@Service
//public class MenuServiceImpl extends BaseService<MenuMapper, Menu> implements MenuService {
//
//    @Autowired
//    MenuMapper MenuMapper;
//
//    @Autowired
//    RoleMenuMapper roleMenuMapper;
//
//    /**
//     * 新增Menu
//     *
//     * @param MenuVo
//     * @return 结果
//     */
//    @Transactional(rollbackFor = Exception.class)
//    @Override
//    public int insertMenu(MenuVo MenuVo) {
//        return MenuMapper.insert(MenuVo);
//    }
//
//    /**
//     * 单个删除Menu信息
//     *
//     * @param id-主键
//     * @return 结果
//     */
//    @Transactional(rollbackFor = Exception.class)
//    @Override
//    public AjaxResult deleteById(Long id) {
//        LambdaQueryWrapper<RoleMenu> wrapper = new LambdaQueryWrapper<>();
//        wrapper.eq(RoleMenu::getMenuId, id);
//        List<RoleMenu> roleMenus = roleMenuMapper.selectList(wrapper);
//        if (roleMenus.size() > 0){
//            return AjaxResult.error("该菜单已被其他角色选择关联，请先删除角色关联后在进行删除");
//        }
//        return AjaxResult.success(MenuMapper.deleteById(id));
//    }
//
//    /**
//     * 批量删除Menu信息
//     *
//     * @param ids-主键[]
//     * @return 结果
//     */
//    @Transactional(rollbackFor = Exception.class)
//    @Override
//    public int deleteByIds(Long[] ids) {
//        return MenuMapper.deleteBatchIds(Arrays.asList(ids));
//    }
//
//    /**
//     * 修改Menu
//     *
//     * @param MenuVo
//     * @return 结果
//     */
//    @Transactional(rollbackFor = Exception.class)
//    @Override
//    public int updateMenu(MenuVo MenuVo) {
//        return MenuMapper.updateById(MenuVo);
//    }
//
//    /**
//     * 查询Menu
//     *
//     * @param id-主键
//     * @return Menu
//     */
//    @Override
//    public Menu selectById(Long id) {
//        return MenuMapper.selectById(id);
//    }
//
//    /**
//     * 查询Menu列表
//     *
//     * @param MenuVo
//     * @return Menu集合
//     */
//    @Override
//    public List<Menu> selectMenuList(MenuVo MenuVo) {
//        LambdaQueryWrapper<Menu> queryWrapper = new LambdaQueryWrapper<>();
//        //queryWrapper.eq(Menu::getId, MenuVo.getId).select(Menu::getId);
//        return MenuMapper.selectList(queryWrapper);
//    }
//
//}
